////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///  File:        platform.h
///  Description: Platform definitions.
///  Author:      Chiuta Adrian Marius
///  Created:     25-11-2009
///
///  Licensed under the Apache License, Version 2.0 (the "License");
///  you may not use this file except in compliance with the License.
///  You may obtain a copy of the License at
///  http://www.apache.org/licenses/LICENSE-2.0
///  Unless required by applicable law or agreed to in writing, software
///  distributed under the License is distributed on an "AS IS" BASIS,
///  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
///  See the License for the specific language governing permissions and
///  limitations under the License.
///
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#ifndef __INCLUDED_PLATFORM_H__
#define __INCLUDED_PLATFORM_H__

// The following macros define the minimum required platform.  The minimum required platform
// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run 
// your application.  The macros work by enabling all features available on platform versions up to and 
// including the version specified.

// Modify the following defines if you have to target a platform prior to the ones specified below.
// Refer to MSDN for the latest info on corresponding values for different platforms.
#ifndef WINVER                          // Specifies that the minimum required platform is Windows Vista.
    #define WINVER 0x0600               // Change this to the appropriate value to target other versions of Windows.
#endif

#ifndef _WIN32_WINNT                    // Specifies that the minimum required platform is Windows Vista.
    #define _WIN32_WINNT 0x0600         // Change this to the appropriate value to target other versions of Windows.
#endif

#ifndef _WIN32_WINDOWS                  // Specifies that the minimum required platform is Windows 98.
    #define _WIN32_WINDOWS 0x0410       // Change this to the appropriate value to target Windows Me or later.
#endif

#ifndef _WIN32_IE                       // Specifies that the minimum required platform is Internet Explorer 7.0.
    #define _WIN32_IE 0x0700            // Change this to the appropriate value to target other versions of IE.
#endif

#define WIN32_LEAN_AND_MEAN             // Exclude rarely-used stuff from Windows headers

// Windows Header Files:
#include <windows.h>

#endif // __INCLUDED_PLATFORM_H__
